Low Redundancy in Dictionaries with O(1) Worst Case Lookup Time
نویسنده
چکیده
A static dictionary is a data structure for storing subsets of a finite universe U , so that membership queries can be answered efficiently. We study this problem in a unit cost RAM model with word size Ω(log |U |), and show that for n-element subsets, constant worst case query time can be obtained using B +O(log log |U |) + o(n) bits of storage, where B = dlog2 (|U | n ) e is the minimum number of bits needed to represent all such subsets. The solution for dense subsets uses B + O( |U | log log |U | log |U | ) bits of storage, and supports constant time rank queries. In a dynamic setting, allowing insertions and deletions, our techniques give an O(B) bit space usage.
منابع مشابه
Low Redundancy in Static Dictionaries with O(1) Worst Case Lookup Time
A static dictionary is a data structure for storing subsets of a finite universe U , so that membership queries can be answered efficiently. We study this problem in a unit cost RAM model with word size Ω(log |U |), and show that for n-element subsets, constant worst case query time can be obtained using B +O(log log |U |) + o(n) bits of storage, where B = dlog2 (|U| n ) e is the minimum number...
متن کاملLow Redundancy in Static Dictionaries with Constant Query Time
A static dictionary is a data structure storing subsets of a finite universe U , answering membership queries. We show that on a unit cost RAM with word size Θ(log |U |), a static dictionary for n-element sets with constant worst case query time can be obtained using B+O(log log |U |)+o(n) bits of storage, where B = dlog2 (|U| n )e is the minimum number of bits needed to represent all nelement ...
متن کامل8.1 Hashing Algorithms 8.1.1 Perfect Hashing – Reducing Worst Case Loopkup Time
Sometimes it is desireable to store a set of items S taken from a universe U using an amount of storage space n and having average lookup time O(1). One system which has these properties is a hash table with a completely random hash function. Last time we saw how to implement this using a 2-universal hash family. Unfortunately these hash families can have a large lookup time in the worst case. ...
متن کاملAn Overview of Cuckoo Hashing
Cuckoo Hashing is a technique for resolving collisions in hash tables that produces a dictionary with constant-time worst-case lookup and deletion operations as well as amortized constant-time insertion operations. First introduced by Pagh in 2001 [3] as an extension of a previous static dictionary data structure, Cuckoo Hashing was the first such hash table with practically small constant fact...
متن کاملDynamic Dictionaries in Constant Worst-Case Time
We introduce a technique to maintain a set of n elements from a universe of size u with membership and indel operations, so that elements are associated r-bit satellite data. We achieve constant worst-case time for all the operations, at the price of spending u + o(u) + O(nr + n log log log u) bits of space. Only the variant where the space is of the form O(nr + n log u) was exhaustively explor...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1998